#include <bits/stdc++.h>

using namespace std;

class Solution {
   public:
    int longestAlternatingSubarray(vector<int>& nums, int threshold) {
        int dp = 0, ret = 0;
        for (int i = nums.size() - 1; i >= 0; i--) {
            if (nums[i] > threshold) {
                dp = 0;
            } else if (i == nums.size() - 1 || nums[i] % 2 != nums[i + 1] % 2) {
                dp++;
            } else {
                dp = 1;
            }

            if (nums[i] % 2 == 0) {
                ret = max(dp, ret);
            }
        }
        return ret;
    }
};